# @Author   :hcs
# @File     :8-迭代器原理解析.py
# @Time     :2025/2/28 上午11:50

# 把range(10)换掉，变为自己写的
for i in range(10):
    print(i, end=' ')


# 迭代器
def f(n):
    i = 0
    while i < n:
        # 函数内一旦放了yield就变成一个生成器
        yield i  # 让进程暂停到这个位置，并把i返回，然后再回到暂停的位置继续执行
        i += 1
    return


print()
for j in f(2):  # yield i返回的i就会被j所接收到
    print(j, end=' ')

print('-' * 50)
myiter = f(2)
print(next(myiter))
print(next(myiter))
print(next(myiter))
